﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Derbster.Controller
{
    public class RosterController
    {
        public RosterController(MatchHandle handle)
        {
            
        }
        /// <summary>
        /// Set the color for the first (home) team roster.
        /// </summary>       
        /// <param name="color">The color of the roster.</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool SetFirstRosterColor(string color)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Set the color for the second (away) team roster.
        /// </summary>
        /// <param name="color">The color of the roster.</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool SetSecondRosterColor(string color)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Set the captain of the first (home) team roster.
        /// </summary>
        /// <param name="number">Number of the skater.</param>
        /// <param name="name">Name of the skater.</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool SetFirstCaptain(string number, string name)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Set the captain of the second (away) team roster.
        /// </summary>
        /// <param name="number">Number for the skater.</param>
        /// <param name="name">Name for the skater.</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool SetSecondCaptain(string number, string name)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Add a player to the first (home) team roster by number and name.
        /// </summary>
        /// <param name="number">Number of the player.</param>
        /// <param name="name">Name of the player.</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool AddFirstPlayer(string number, string name)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Add a player to the first (home) team roster by a skater handle.
        /// </summary>
        /// <param name="skaterHandle">Handle for the skater.</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool AddFirstPlayer(SkaterHandle skaterHandle)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Add a player to the first (home) team roster by a skater handle
        /// and alias (different name and/or number).
        /// </summary>
        /// <param name="skaterHandle">Handle for the skater.</param>
        /// <param name="number">The number the skater is using in this match.</param>
        /// <param name="name">The name the skater is using in this match.</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool AddFirstPlayerAs(SkaterHandle skaterHandle, string number, string name)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Add a player to the second (away) team roster by number and name.
        /// </summary>
        /// <param name="number">Number of the player.</param>
        /// <param name="name">Name of the player.</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool AddSecondPlayer(string number, string name)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Add a player to the second (away) team roster by a skater handle.
        /// </summary>
        /// <param name="skaterHandle">Handle for the skater.</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool AddSecondPlayer(SkaterHandle skaterHandle)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Add a player to the second team roster by a skater handle
        /// and alias (different name and/or number).
        /// </summary>
        
        /// <param name="skaterHandle">Handle for the skater.</param>
        /// <param name="number"></param>
        /// <param name="name"></param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool AddSecondPlayerAs(SkaterHandle skaterHandle, string number, string name)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Remove the player from the first (home) roster.
        /// </summary>
        /// <param name="number">The number of the player</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool RemoveFromFirstRoster(string number)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Remove the player from the first (home) roster.
        /// </summary>
        
        /// <param name="skaterHandle">The skater handle of the player.</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool RemoveFromFirstRoster(SkaterHandle skaterHandle)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Remove the player from the second (away) roster.
        /// </summary>
        
        /// <param name="number">The number of the player</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool RemoveFromSecondRoster(string number)
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// Remove the player from the second (away) roster.
        /// </summary>
        /// <param name="skaterHandle">The skater handle of the player.</param>
        /// <returns>True if action was completed, false if the action can not be performed.</returns>
        public bool RemoveFromSecondRoster(SkaterHandle skaterHandle)
        {
            throw new NotImplementedException();
        }


    }
}
